#if !defined(__DAEMON_SUB_PROCESS_H)
#define __DAEMON_SUB_PROCESS_H
#include <sys/types.h>

#define EXE_PATH "/usr/bin/gateway"  // 正式路径
// #define EXE_PATH "/home/zxf/桌面/gitway_240824/gateway_test"  // 测试路径
#define MAX_FAIL_COUNT 10  // 子进程最大失败次数

// 子进程结构体
typedef struct {
    pid_t pid;  // 子进程pid
    char *cmd_param; // 子进程启动的参数
    int fail_count;  // 子进程失败次数
} SubProcess;

/**
 * 初始化子进程
 */
SubProcess *daemon_sub_process_init(char *cmd_param);

/**
 * 检查并启动子进程
 */
int daemon_sub_process_checkStart(SubProcess *sp);

 /**
  * 关闭子进程
  */
 void daemon_sub_process_close(SubProcess *sp);


#endif // __DAEMON_SUB_PROCESS_H
